#抓取百度贴吧的图片
# 网址:http://tieba.baidu.com/p/4775824848#注意:不同的网址它的图片的正则表达式是不同的,可以在其网页源码查找,根据图片位置
##相关资料:点击打开链接
import urllib.request
import re
import os
def fetch_pictures(url):
html_content = urllib.request.urlopen(url).read()
r = re.compile('<br><img class="BDE_Image" src="(.*?)"')
picture_url_list = r.findall(html_content.decode('utf-8'))
os.mkdir('photos')
os.chdir(os.path.join(os.getcwd(), 'photos'))
for i in range(len(picture_url_list)):
picture_name = str(i) + '.jpg'
try:
urllib.request.urlretrieve(picture_url_list[i], picture_name)
print("Success to download " + picture_url_list[i])
except:
print("Fail to download " + picture_url_list[i])
if __name__ == '__main__':
fetch_pictures("http://tieba.baidu.com/p/4775824848")
#图片保存在photos文件夹中,结果如图所示 Lana Del Rey
##当改变网址时,需要注意更改正则表达式,因为搜索图片的页面网址源代码中的图片属性可能会不同,重新设定正则表达式即可。